#include"processbar.h"

const char *lable = "|/-\\";


//version1
void process()
{
  char buffer[NUM];
  memset(buffer , '\0',sizeof(buffer));
  int cnt = 0;
  int n = strlen(lable);
  buffer[0] = Head;
  while(cnt <= 100)
  {
  printf("[%-100s][%3d%%][%c]\r",buffer,cnt,lable[cnt%n]);

  fflush(stdout);
  buffer[cnt++] = Body;
 if(cnt < 100)  buffer[cnt] = Head;
  usleep(50000);

  }

printf("\n");

}



//version : 进度是多少，你的进度条能知道吗另外，什么进度？依附于其他应用，比如下载
//
char buffer[NUM] = {0};
void process_flush(double rate)
{

  static  int cnt = 0;
  int n = strlen(lable);
  if(rate <= 1.0) buffer[0] = Head;
  
  printf("[%-100s][%.1f%%][%c]\r",buffer,rate,lable[cnt%n]);

  fflush(stdout);
  buffer[(int)rate] = Body;
  if((int)rate+1 < 100) buffer[(int)(rate+1)] = Head;
  if(rate>= 100.0) printf("\n");

  cnt++;
  cnt %= n;
}






